#include<stdio.h>    
#include<string.h>    
#include<algorithm>    
using namespace std;    
    char a[10][10];    
    int main()    
    {    
        int n,k;    
        while(~scanf("%d%d",&n,&k))    
        {    
            int nex[10];    
            for(int i=1;i<=n;i++)scanf("%s",a[i]);    
            for(int i=1;i<=k;i++)nex[i]=i;    
            int m=1;    
            for(int i=1;i<=k;i++)m*=i;    
            int output=0x3f3f3f3f;    
            for(int i=1;i<=m;i++)    
            {    
                next_permutation(nex+1,nex+1+k);    
                int num[10];    
                memset(num,0,sizeof(num));    
        
                for(int i=1;i<=n;i++)    
                {    
                    for(int j=1;j<=k;j++)    
                    {    
                        num[i]=num[i]*10+a[i][nex[j]-1]-'0';    
                    }    
                }    
                sort(num+1,num+1+n);    
                output=min(output,num[n]-num[1]);    
            }    
            printf("%d\n",output);    
        }    
    }    

